package cn.kow.kmall.system.service;

import cn.kow.kmall.system.entity.SysNotice;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

/**
 * @Author: lijun
 * @Description:
 * @Date: Created in 2019-10-29 18:27
 * @Modified By:
 */
public interface SysNoticeService {

    /**
     * 新增公告
     * @param notice  公告
     * @return 结果
     */
    void save(SysNotice notice);

    /**
     * 删除公告
     * @param id   公告ID
     * @return 结果
     */
    void remove(Long id);

    /**
     * 更新公告
     * @param notice  公告
     * @return 结果
     */
    void update(SysNotice notice);

    /**
     * 根据ID查询公告
     * @param id    公告ID
     * @return 结果
     */
    SysNotice getById(Long id);

    /**
     * 分页查询公告
     * @param title     标题
     * @param type      类型
     * @param pageable  分页
     * @return 结果
     */
    Page<SysNotice> listByPage(String title, String type, Short status, Pageable pageable);
}
